package com.zhiche.lisa.bms.pojo.vo.driver;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @FileName: cn.huiyunche.base.service.vo
 * @Description: Description
 * @author: Aaron
 * @date: 2017/3/13 下午9:24
 */
@Data
@ApiModel(value = "线路计价公里VO", description = "线路计价公里VO")
public class PriceconfMileVO {

	@ApiModelProperty(value = "id", name = "id", dataType = "Integer", example = "1")
	private Integer id;

	/**
	 * 线路主键
	 */
	@NotNull(message = "请选择线路")
	@Min(value = 1, message = "线路主键必须大于0")
	@ApiModelProperty(value = "线路主键", name = "routeId", dataType = "Integer")
	private Integer routeId;

	/**
	 * 线路名称
	 */
	@ApiModelProperty(value = "线路名称", name = "routeName", dataType = "String")
	private String routeName;

	/**
	 * 起始省编码
	 */
	@ApiModelProperty(value = "线路名称", name = "routeName", dataType = "String")
	private String oProvinceCode;

	/**
	 * 起始省名称
	 */
	@ApiModelProperty(value = "起始省名称", name = "oProvinceName", dataType = "String")
	private String oProvinceName;

	/**
	 * 起点市编码
	 */
	@ApiModelProperty(value = "起点市编码", name = "oCityCode", dataType = "String")
	private String oCityCode;

	/**
	 * 起点城市
	 */
	@ApiModelProperty(value = "起点市", name = "oCity", dataType = "String")
	private String oCity;

	/**
	 * 起点县编码
	 */
	@ApiModelProperty(value = "起点县编码", name = "oCountyCode", dataType = "String")
	private String oCountyCode;

	/**
	 * 起点区县
	 */
	@ApiModelProperty(value = "起点区县", name = "oCounty", dataType = "String")
	private String oCounty;

	/**
	 * 终点市编码
	 */
	@ApiModelProperty(value = "终点市编码", name = "dCityCode", dataType = "String")
	private String dCityCode;

	/**
	 * 终点城市
	 */
	@ApiModelProperty(value = "终点城市", name = "dCity", dataType = "String")
	private String dCity;

	/**
	 * 终点县编码
	 */
	@ApiModelProperty(value = "终点县编码", name = "dCountyCode", dataType = "String")
	private String dCountyCode;

	/**
	 * 终点区县
	 */
	@ApiModelProperty(value = "终点区县", name = "dCounty", dataType = "String")
	private String dCounty;

	/**
	 * 起始省标签
	 */
	@ApiModelProperty(value = "起始省标签", name = "oTag", dataType = "String")
	private String oTag;

	/**
	 * 目的省编码
	 */
	@ApiModelProperty(value = "目的省编码", name = "dProvinceCode", dataType = "String")
	private String dProvinceCode;

	/**
	 * 目的省名称
	 */
	@ApiModelProperty(value = "目的省编码", name = "dProvinceCode", dataType = "String")
	private String dProvinceName;

	/**
	 * 目的地标签
	 */
	@ApiModelProperty(value = "目的地标签", name = "dTag", dataType = "String")
	private String dTag;

	/**
	 * 计价里程
	 */
	@NotNull(message = "请输入里程")
	@DecimalMin(value = "0.01", message = "里程必须大于0.01公里")
	@DecimalMax(value = "10000", message = "里程不能大于10000公里")
	private BigDecimal currentValue;

	/**
	 * 生效时间
	 */
	@NotNull(message = "请输入生效时间")
	private Date effectiveDate;

	@ApiModelProperty(value = "失效时间", name = "invalidDate", dataType = "Date")
	private Date invalidDate;

	/**
	 * 创建时间
	 */
	@ApiModelProperty(value = "创建时间", name = "gmtCreate", dataType = "Date")
	private Date gmtCreate;

	/**
	 * 更新时间
	 */
	@ApiModelProperty(value = "更新时间", name = "gmtUpdate", dataType = "Date")
	private Date gmtUpdate;

	/**
	 * 创建人
	 */
	@ApiModelProperty(value = "创建人", name = "creator", dataType = "String")
	private String creator;

	public String getoProvinceCode() {
		return oProvinceCode;
	}

	public void setoProvinceCode(String oProvinceCode) {
		this.oProvinceCode = oProvinceCode;
	}

	public String getoProvinceName() {
		return oProvinceName;
	}

	public void setoProvinceName(String oProvinceName) {
		this.oProvinceName = oProvinceName;
	}

	public String getoTag() {
		return oTag;
	}

	public void setoTag(String oTag) {
		this.oTag = oTag;
	}

	public String getdProvinceCode() {
		return dProvinceCode;
	}

	public void setdProvinceCode(String dProvinceCode) {
		this.dProvinceCode = dProvinceCode;
	}

	public String getdProvinceName() {
		return dProvinceName;
	}

	public void setdProvinceName(String dProvinceName) {
		this.dProvinceName = dProvinceName;
	}

	public String getdTag() {
		return dTag;
	}

	public void setdTag(String dTag) {
		this.dTag = dTag;
	}

	public String getoCityCode() {
		return oCityCode;
	}

	public void setoCityCode(String oCityCode) {
		this.oCityCode = oCityCode;
	}

	public String getoCity() {
		return oCity;
	}

	public void setoCity(String oCity) {
		this.oCity = oCity;
	}

	public String getoCountyCode() {
		return oCountyCode;
	}

	public void setoCountyCode(String oCountyCode) {
		this.oCountyCode = oCountyCode;
	}

	public String getoCounty() {
		return oCounty;
	}

	public void setoCounty(String oCounty) {
		this.oCounty = oCounty;
	}

	public String getdCityCode() {
		return dCityCode;
	}

	public void setdCityCode(String dCityCode) {
		this.dCityCode = dCityCode;
	}

	public String getdCity() {
		return dCity;
	}

	public void setdCity(String dCity) {
		this.dCity = dCity;
	}

	public String getdCountyCode() {
		return dCountyCode;
	}

	public void setdCountyCode(String dCountyCode) {
		this.dCountyCode = dCountyCode;
	}

	public String getdCounty() {
		return dCounty;
	}

	public void setdCounty(String dCounty) {
		this.dCounty = dCounty;
	}
}
